package com.example.project.service.impl;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.example.project.core.text.Convert;
import com.example.project.entity.Company;
import com.example.project.mapper.CompanyMapper;
import com.example.project.service.CompanyService;
import com.example.project.utils.DateUtils;

/**
 * 公司Service业务层处理
 * 
 * @author ruoyi
 * @date 2025-09-18
 */
@Service
public class CompanyServiceImpl extends BaseServiceImpl implements CompanyService {

	@Autowired
	private CompanyMapper companyMapper;

	/**
	 * 查询公司
	 * 
	 * @param id 公司主键
	 * @return 公司
	 */
	@Override
	public Company selectCompanyById(Long id) {
		return companyMapper.selectCompanyById(id);
	}

	/**
	 * 查询公司列表
	 * 
	 * @param tCompany 公司
	 * @return 公司
	 */
	@Override
	public List<Company> selectCompanyList(Company tCompany) {
		return companyMapper.selectCompanyList(tCompany);
	}

	/**
	 * 新增公司
	 * 
	 * @param tCompany 公司
	 * @return 结果
	 */
	@Override
	public int insertCompany(Company tCompany) {
		tCompany.setCreateTime(DateUtils.curLocalDateTime());
		return companyMapper.insertCompany(tCompany);
	}

	/**
	 * 修改公司
	 * 
	 * @param tCompany 公司
	 * @return 结果
	 */
	@Override
	public int updateCompany(Company tCompany) {
		tCompany.setUpdateTime(DateUtils.curLocalDateTime());
		return companyMapper.updateCompany(tCompany);
	}

	/**
	 * 批量删除公司
	 * 
	 * @param ids 需要删除的公司主键
	 * @return 结果
	 */
	@Override
	public int deleteCompanyByIds(String ids) {
		return companyMapper.deleteCompanyByIds(Convert.toStrArray(ids));
	}

	/**
	 * 删除公司信息
	 * 
	 * @param id 公司主键
	 * @return 结果
	 */
	@Override
	public int deleteCompanyById(Long id) {
		return companyMapper.deleteCompanyById(id);
	}

	@Override
	public List<Company> selectCompanyAll() {
		// TODO Auto-generated method stub
		return companyMapper.selectCompanyAll();
	}
}
